﻿#if UNITY_EDITOR
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEngine;

namespace GameDesigner
{
    internal static class StateMachineStyles
    {
        internal static GUIContent animPlayModeLabel = new GUIContent(PluginSetting.Language["Action execution mode"], "animPlayMode");
        internal static GUIContent animSpeedLabel = new GUIContent(PluginSetting.Language["Animation speed"], "animSpeed");
        internal static GUIContent animLoopLabel = new GUIContent(PluginSetting.Language["Animation cycle?"], "animLoop");
        internal static GUIContent isCrossFadeLabel = new GUIContent(PluginSetting.Language["isCrossFade"], "isCrossFade");
        internal static GUIContent durationLabel = new GUIContent(PluginSetting.Language["duration"], "duration");
        internal static GUIContent isExitStateLabel = new GUIContent(PluginSetting.Language["Exit status at end of action"], "isExitState");
        internal static GUIContent dstStateIDLabel = new GUIContent(PluginSetting.Language["get into the state"], "dstStateID");
        internal static GUIContent animClipReferenceLabel = new GUIContent("动画剪辑引用", "animClipReference");
        internal static GUIContent actionTreeLabel = new GUIContent(PluginSetting.Language["Action tree"]);
        internal static GUIContent addActionLabel = new GUIContent(PluginSetting.Language["Add action"], "Add action");
        internal static GUIContent removeActionLabel = new GUIContent(PluginSetting.Language["Remove action"], "Remove action");
        internal static GUIContent copyActionLabel = new GUIContent(PluginSetting.Language["Copy action"], "Copy action");
        internal static GUIContent pasteNewActionLabel = new GUIContent(PluginSetting.Language["Paste new action"], "Paste new action");
        internal static GUIContent pasteActionLabel = new GUIContent(PluginSetting.Language["Paste action value"], "Paste action value");
        internal static GUIContent editActionLabel = new GUIContent(PluginSetting.Language["Edit action scripts"], "Edit action scripts");
        internal static GUIContent removeActionScriptsLabel = new GUIContent(PluginSetting.Language["Remove action scripts"], "Remove action scripts");
        internal static GUIContent copyActionScriptsLabel = new GUIContent(PluginSetting.Language["Copy action scripts"], "Copy action scripts");
        internal static GUIContent pasteNewActionScriptsLabel = new GUIContent(PluginSetting.Language["Paste new action scripts"], "Paste new action scripts");
        internal static GUIContent pasteActionScriptValuesLabel = new GUIContent(PluginSetting.Language["Paste action script values"], "Paste action script values");
        internal static GUIContent addActionScriptsLabel = new GUIContent(PluginSetting.Language["Add action scripts"], "Add action scripts");
        internal static GUIContent createScriptPathsLabel = new GUIContent(PluginSetting.Language["Create action script paths:"], "Create action script paths:");
        internal static GUIContent createScriptNameLabel = new GUIContent(string.Empty, "CreateScriptName");
        internal static GUIContent createActionScriptsLabel = new GUIContent(PluginSetting.Language["Create action scripts"]);
        internal static GUIContent cancelLabel = new GUIContent(PluginSetting.Language["cancel"]);

        internal static GUIContent stateAttributeLabel = new GUIContent(PluginSetting.Language["State attribute"]);
        internal static GUIContent stateNameLabel = new GUIContent(PluginSetting.Language["Status name"], "stateName");
        internal static GUIContent stateIdLabel = new GUIContent(PluginSetting.Language["Status identifier"], "stateID");
        internal static GUIContent actionSystemLabel = new GUIContent(PluginSetting.Language["Action system"], "actionSystem  专为玩家角色AI其怪物AI所设计的一套AI系统！");

        internal static GUIContent clipNameLabel = new GUIContent(PluginSetting.Language["Movie clips"], "clipName");

        internal static GUIContent removeStateScriptsLabel = new GUIContent(PluginSetting.Language["Remove status scripts"]);
        internal static GUIContent copyStateScriptsLabel = new GUIContent(PluginSetting.Language["Copy status script"]);
        internal static GUIContent pasteNewStateScriptsLabel = new GUIContent(PluginSetting.Language["Paste a new status script"]);
        internal static GUIContent pasteStateScriptValuesLabel = new GUIContent(PluginSetting.Language["Paste status script values"]);
        internal static GUIContent addStateScriptsLabel = new GUIContent(PluginSetting.Language["Adding status scripts"]);
        internal static GUIContent editStatusScriptLabel = new GUIContent(PluginSetting.Language["Edit status script"]);
        internal static GUIContent createStateScriptPathLabel = new GUIContent(PluginSetting.Language["Create a status script path:"]);
        internal static GUIContent createStateScriptLabel = new GUIContent(PluginSetting.Language["Create status scripts"]);

        internal static GUIContent removeTransisionScripsLabel = new GUIContent(PluginSetting.Language["Remove connection scripts"]);
        internal static GUIContent copyTransisionScripsLabel = new GUIContent(PluginSetting.Language["Copy connection scripts"]);
        internal static GUIContent pasteNewTransisionScripsLabel = new GUIContent(PluginSetting.Language["Paste a new connection script"]);
        internal static GUIContent pasteTransisionScripsValuesLabel = new GUIContent(PluginSetting.Language["Paste connection script values"]);
        internal static GUIContent addTransisionScripsLabel = new GUIContent(PluginSetting.Language["Add connection scripts"]);
        internal static GUIContent editTransisionScripsLabel = new GUIContent(PluginSetting.Language["Edit connection script"]);
        internal static GUIContent createTransisionScripsPathLabel = new GUIContent(PluginSetting.Language["Create a connection script path:"]);
        internal static GUIContent createTransisionScripsLabel = new GUIContent(PluginSetting.Language["Create connection scripts"]);

        internal static GUIContent[] animPlayModeOptions = new GUIContent[]
        {
            new GUIContent(PluginSetting.Language["Action randomised"], "Random"),
            new GUIContent(PluginSetting.Language["Action sequence"], "Sequence"),
            new GUIContent(PluginSetting.Language["Action none"], "Code")
        };

        internal static GUIContent animTimeLabel = new GUIContent(PluginSetting.Language["Animation time"], "animTime");
        internal static GUIContent animTimeMaxLabel = new GUIContent(PluginSetting.Language["Animation length"], "animTimeMax");

        internal static GUIStyle progressBarBack = "ProgressBarBack";
        internal static GUIStyle dragtabdropwindow = "dragtabdropwindow";
        internal static GUIStyle boldLabel = "BoldLabel";
        internal static GUIStyle toggleMixed = "ToggleMixed";
        internal static GUIStyle preDropDown = "PreDropDown";

        static StateMachineStyles()
        {
        }
    }
}
#endif